home *** CD-ROM | disk | FTP | other *** search
/ The X-Philes (2nd Revision) / The X-Philes Number 1 (1995).iso / xphiles / hp48_1 / todo11 < prev    next >
Text File  |  1995-03-31  |  34KB  |  624 lines

  1. Article 5359 of comp.sys.handhelds:
  2. Path: en.ecn.purdue.edu!noose.ecn.purdue.edu!news.cs.indiana.edu!att!linac!uwm.edu!zaphod.mps.ohio-state.edu!sdd.hp.com!hplabs!hpfcso!hpfcbig!diamant
  3. From: diamant@hpfcbig.SDE.HP.COM (John Diamant)
  4. Newsgroups: comp.sys.handhelds
  5. Subject: Re: Todo program
  6. Message-ID: <1010009@hpfcbig.SDE.HP.COM>
  7. Date: 27 Mar 91 05:26:28 GMT
  8. References: <1991Mar12.144908.1088@truevision.com>
  9. Organization: HP SESD, Fort Collins, CO
  10. Lines: 610
  11.  
  12. Program Id:   TODO
  13. Description:  To-Do Reminder List
  14. Programmer:   David Cook - Cookware
  15. Modified:     John Diamant (modifications version 1.0)
  16.  
  17. This program is a generic list manager for the 48SX calculator.  It
  18. works not only on todo lists, but any other type of list you care to
  19. manage in the calculator (limited by memory of the calculator).
  20.  
  21. I'm not going to repeat most of the general announcements from the original
  22. posting as I'm including it at the bottom of this message.  Please note in
  23. particular the shareware notice in David's original comments.
  24.  
  25. Installation instructions are the same as the original (see David's note
  26. at the bottom if you don't know how to install an ASC format program).
  27. If you can't download via ASC and need a cleartext posting (translate
  28. code 3), let me know (email would be fine) and I'll post that as well.
  29. However, to avoid further delay, I'm posting this now in ASC format.
  30. If you use this new TODO version and like it, I'd like to hear from 
  31. you (especially if you're using the new features I added to it).  If anybody
  32. knows David Cook's email address, I'd like to get in touch with him
  33. to merge my changes into his master version.
  34.  
  35. The next response to this note will be a question I have regarding
  36. memory efficiency and PICT.  If I find out how to improve the memory
  37. efficiency, I'll probably post a modified version, so you'll have to decide
  38. whether you want to wait or download this version.  However, the lists you
  39. build with this version should work just fine for a more memory efficient
  40. version and I may be able to provide a simple patch (by the way, the 
  41. memory usage problem is not something I introduced with my changes but my
  42. increasing the width of the PICT made it more likely to occur).
  43.  
  44. To run the program, simply press the RUN button in the variables menu in
  45. the TODO directory (I use the following entry in my CST menu to start up the
  46. program:  { "LIST" << TODO RUN >> })
  47.  
  48. By the way, I have truncated the grocery list substantially from the original
  49. posting due to it's taking too much space.  If you want the full one, download
  50. the original posting.
  51.  
  52. The changes from David's version 1.0 are as follows:
  53.  
  54.    Made the OFF key turn the calculator off while in TODO (instead of BLUE
  55.     SHIFT [EXIT])
  56.    Made the [EDIT] menu key return the current text as the default value for
  57.     the new text (which also makes it easy to cancel an edit simply by
  58.     pressing ENTER without making any changes).
  59.    Made the program font-size independent (with a table for the font sizes for
  60.     the 3 builtin available fonts) and provided a binding (+ and - keys)
  61.     for dynamically changing the size of the font while the program is
  62.     running.  I did this because the small font is good when you want
  63.     lots of data, but is hard on the eyes since it's all uppercase, so I
  64.     want different fonts at different times (depends on how wide the
  65.     data is I'm viewing.
  66.    Implemented horizontal scrolling (by character, 10 characters at a time,
  67.     and beginning and end of line).  I also increased the width of the
  68.     virtual screen (adjustable with a local variable in the TODO
  69.     directory).
  70.    LIST mode (choose which list to make active) has been extended to support
  71.     USE, NEW, and DEL menu buttons rather than requiring obscure
  72.     keystrokes for these functions.
  73.    Made LIST mode more robust (added beeps for incorrect keystrokes).
  74.    Deleting a list asks for confirmation (default is no).
  75.    Changed the keybinding for deleting an item from a list from DEL to
  76.     BLUE SHIFT DEL to avoid risk of accidental deletion.
  77.    The ATTN key is trapped via IFERR and appropriate cleanup is done
  78.     (note that I do not rely on Bill Wickes special version of IFERR --
  79.     the builtin was sufficient for my purpose -- to make sure the 
  80.     program cleaned up if I accidentally used ATTN instead of EXIT)
  81.    Disables clock display during program execution and restores initial
  82.     state of clock (displayed or not) on exit (even with ATTN key).
  83.    Made the function which create new lists do some error checking on legal
  84.     names (using "V" mode for INPUT).
  85.    Removed reordering of vars on exit to put RUN at beginning since I
  86.     run the program from CST and I don't want to pay the run-time cost
  87.     every time I exit to reorder the VARS menu.
  88.  
  89. > I'll post either when I get all the changes finished or I expect it to be
  90. > awhile before I get the rest done (I'll probably post in a couple of days).
  91.  
  92. Sorry it was more than a couple of days, but I think you'll be glad I waited
  93. as I did add some functionality almost each day I delayed posting.
  94.  
  95.  
  96. How To Use TODO (modified from David's original instructions)
  97. ---------------
  98.  
  99.   When the program begins to run, it will display six menu items assigned
  100. to the menu keys.  These six items are:
  101.  
  102.      LIST  -  Catalog of all lists OR create a new list OR delete a list
  103.      ADD   -  Adds a new item to the end of the list OR inserts a blank item
  104.      EDIT  -  Edits the text of an existing item
  105.      SORT  -  Sort any particular list
  106.      MARK  -  Marks an item OR Unmarks an item OR Unmarks all marked items
  107.      EXIT  -  Exits the program and returns you to the HOME directory
  108.  
  109. The following lists the available KEYSTROKES from the main menu level:
  110.  
  111. UP ARROW                - Scroll the current list towards the top - one item
  112. ORANGE SHIFT UP ARROW   - Move the current list toward the top - one page
  113. BLUE SHIFT UP ARROW     - Move the current list to the top
  114. DOWN ARROW              - Scroll the current list toward the bottom - one item
  115. ORANGE SHIFT DOWN ARROW - Move the current list toward the bottom - one page
  116. BLUE SHIFT DOWN ARROW   - Move the current list to the bottom
  117. LEFT ARROW        - scroll the current list towards the left - one char
  118. ORANGE SHIFT LEFT ARROW    - scroll the current list towards the left - 10 chars
  119. BLUE SHIFT LEFT ARROW    - scroll the current list to the left edge
  120. RIGHT ARROW        - scroll the current list towards the right - one char
  121. ORANGE SHIFT RIGHT ARROW- scroll the current list towards the right - 10 chars
  122. BLUE SHIFT RIGHT ARROW    - scroll the current list to the right edge
  123. BLUE SHIFT DEL        - Deletes the current item
  124. ORANGE SHIFT DEL (purge)- Deletes ALL marked items
  125. LIST (menu key)         - Get a catalog of all lists
  126. BLUE SHIFT LIST         - Enter the name for a brand new list (also available
  127.               in LIST environment as function key)
  128. ADD  (menu key)         - Add an item to the end of the current list
  129. BLUE SHIFT ADD          - Insert a blank line ABOVE the current item
  130. EDIT (menu key)         - Edit the text of the current line
  131. SORT                    - Sort the current list in alphabetical order
  132. MARK (menu key)         - Mark OR Unmark the current item
  133. BLUE SHIFT MARK         - Unmark ALL marked items
  134. ORANGE SHIFT MARK       - Same as MARK without the Startrek sound
  135. EXIT                    - Stop the program and return to the HOME directory
  136. BLUE SHIFT ON (OFF)    - Turn the calculate off (turning it on returns to
  137.                           TODO automatically with no delay)
  138. +            - Increase font to next larger size
  139. -            - Decrease font to next smaller size
  140.  
  141. KEYSTROKES available from LIST screen (entered via LIST menu key):
  142.  
  143. UP ARROW                - Scroll the current list towards the top - one item
  144. DOWN ARROW              - Scroll the current list toward the bottom - one item
  145. USE (menu key)        - make top list on screen currently viewed list
  146. ENTER            - same as USE
  147. NEW (menu key)        - Create new list (same as BLUE SHIFT LIST above)
  148. DEL (menu key)        - Delete top list on screen (will ask for confirmation)
  149. +            - Increase font to next larger size
  150. -            - Decrease font to next smaller size
  151.  
  152. Note the setting of PW below to change the width of your virtual screen.
  153. The one I posted is set to 200 but you might prefer 262 (2 screens)if
  154. you have sufficient memory.
  155.  
  156. New Internals (see the original posting for other internals):
  157.  
  158. Here is a brief listing of what the other routines do:
  159.  
  160. PW      - page width.  Number of pixels of width to make the PICT display.
  161.         The screen is 131 wide, so use no less than 131, but larger than
  162.         131 is required to get any horizontal scrolling.
  163. EXIT      - function used to clean up and exit (called from a few places)
  164. CHFONT      - takes delta for font number as argument and sets up CHARH,
  165.         CHARW, FONT, and H for selected font.  Values of 1, -1, and 0
  166.         are useful (increase font size by one, decrease font size by one,
  167.         and set up font attributes for initialization respectively)
  168. FNTATTR      - list containing font attributes (width and height in pixels) for
  169.         the 3 builtin fonts.  Note that the list is stored as a string
  170.         and converted on the fly to avoid it being seen by the TODO program
  171.         as a user-specified list.
  172. CHARH      - character height in pixels of currently selected font
  173. CHARW      - character width in pixels of currently selected font
  174. H      - number of items which can be displayed on one screen in
  175.         current font
  176. FONT      - number of currently selected font (used in ->GROB call)
  177.  
  178. Only PW should be changed by a user of the program.  The rest are only
  179. documented if you want to change the program.  They are managed internally.
  180.  
  181.  
  182. John Diamant
  183. Software Engineering Systems Division
  184. Hewlett Packard Co.        ARPA Internet: diamant@hpfclp.sde.hp.com
  185. Fort Collins, CO        UUCP:  {hpfcla,hplabs}!hpfclp!diamant
  186.  
  187. This code does not come with any warranty express or implied.  It's
  188. suitability for any purpose is not the responsibility of the authors.
  189. This response does not represent the official position of, or statement
  190. by, the Hewlett-Packard Company.  The above data is provided for
  191. informational purposes only.  Note that I'm just a 48SX user like you --
  192. I just happen to work for HP.  I do not work in the division that makes
  193. these calculators.
  194.  
  195. -------- ASC encoding of new todo program (original TODO 1.0 docs follow)
  196.  
  197. %%HP: T(3)A(D)F(.);
  198. "69A20FF75462000000402523442340D9D20E16329C2A2DBBF1301329B1C13392
  199. 03000000000000040EEDA133920300000000000005076BA19B1C133920899000
  200. 0000000020EEDA14C5A1C423293632B213019000504454C4454450D9D20E1632
  201. 3CE2284E2010359C2A2279E1AFE22D9D2047A20C2A20900000202B2130456328
  202. 4E2040441445149763204B02DCC029C2A24563284E20103597632DCC029C2A24
  203. 563284E20107597632DCC02B21305BF22D9D2047A20B21309C2A284E2010350A
  204. 132D6E2010E63CE22D6E2010E684E201075D9AE1AFE22D9D2084E20404414451
  205. 4D6E2010E66C7D19C2A2387C176BA1B21305DF22C42324563284E20404414451
  206. 49763204B02DCC0284E2010359C2A290DA14563284E20103597632DCC029C2A2
  207. 4563284E20107597632DCC02B21305DF2284E2050D414B4454493632B21305D1
  208. 0050759405454450D9D20E163247A20B21309C2A284E2010350A132D6E2010E6
  209. 3CE2284E204044144514D6E2010E66C7D19C2A29C2A2C58C1C2A207000002279
  210. E1AFE22D9D2084E204044144514D6E2010E66C7D19C2A2387C176BA1B21305DF
  211. 22C42323CE2278BF18B9C19C2A2EBBE1AFE22D9D208DBF147A20C2A209000002
  212. 02B2130B21305DF224563284E2040441445149763204B02DCC0284E204044144
  213. 5148B9C14563284E20103597632DCC029C2A24563284E20107597632DCC0284E
  214. 2050D414B4454493632B2130691005055E4D4454450D9D20E163284E20404414
  215. 45149C2A284E2010350A132D6E2010E678BF1D6E2010E66C7D19C2A2C2A20700
  216. 0002AE8C1D6E2010E6DBBF19C2A2387C1AE8C1D6E2010E684E2040D4F46464C4
  217. 2324563284E2040441445149763204B02DCC0284E2050355454454493632B213
  218. 04E00050D41425454450D9D20E163284E20404414451484E2010756C7D178BF1
  219. 9C2A29C2A2C58C13CE22C2A207000002279E1AFE22D9D209C2A2C2A207000038
  220. 84E20107584E2030D4F4E4B21305BF22D9D209C2A2C2A20700000284E2010758
  221. 4E2040D4F46464B21305DF22AE8C184E204044144514DBBF184E201075DBBF19
  222. C2A2387C1AE8C14563284E2040441445149763204B02DCC0284E205035545445
  223. 4493632B21306410050144444454450D9D20E1632858A184E204044144514C2A
  224. 20900000202C2A2075000459707560296E60247865602E656874702964756D6A
  225. 08496470254E445542502778656E60246F6E65647A2084E2010C8B2130AC4227
  226. 6BA19C2A2387C176BA14563284E2040441445149763204B02DCC0284E2010359
  227. C2A276BA14563284E20103597632DCC0284E2050D414B4454493632B2130B210
  228. 050D414B4454450D9D20E1632606E1C2A207D000020202020202020245F6D244
  229. F6A0020205562737F6E616C6022556D696E6465627A0A0E2E2E275169647C202
  230. 245796C64696E67602C4963747A0A0655627A30213E20302D2D2024416679646
  231. 0234F6F6B6A0D6F646A30213E2030202A4F686E602449616D616E647A09C2A24
  232. 85A184E20200575B969184E20103533920100000000000011076BA184E205034
  233. 84142584EEDA1B9691614E19C2A284E2010350A132D6E2010E6E4A2051000000
  234. 0000000000000D6E2010E684E20503484142584EEDA1B9691ED2A2387C184E20
  235. 4044144514D6E2010E66C7D184E204064F4E445DA5E1AE8C1C4232858A1606E1
  236. 634E1DCC0284E2050355454454493632B21304220050355454454450D9D20E16
  237. 3284E20107584E20503484142584EEDA1B969184E2010C4DBBF1ED2A2387C10F
  238. 2E193632B21303600050341445454450D9D20E16329C2A24563284E201075976
  239. 32DCC02D13A2FA1A178BF18B9C13CE2278BF14B2A2279E1AFE22D9D2084E2050
  240. E4547545448DBF18DBF1B21305BF22D9D209C2A2DBBF10A132D6E2010E678BF1
  241. D6E2010E66C7D1B0BC19C2A2387C1D6E2010E6DBBF1AE8C1C423284E204035F4
  242. 25454563284E20703414454554D40597632DCC024563284E20703414454554D4
  243. 05976324563284E20404414451497632DCC0284E2040441445148B9C14563284
  244. E20103597632DCC024B2A24563284E20104597632DCC024B2A26911247A20C2A
  245. 20B0000553554C2A20B0000E45475C2A20B00004454C4B2130D511284E2050D4
  246. 14B44544330328BA2084E2010454B2A2279E1B2130D5032D9D20683A2F17A1D8
  247. 732D9D2078BF1339201000000000001210279E18A732D9D203F2A24563284E20
  248. 104597632DCC0284E2050E454754544B21305DF2278BF1339201000000000001
  249. 580279E18A732D9D20683A284E2060348464F4E44584E2050D414B44544B2130
  250. 5DF2278BF1339201000000000001590279E18A732D9D209C2A284E2060348464
  251. F4E44584E2050D414B44544B21305DF2278BF1339201000000000001530279E1
  252. 8A732D9D203CE228BA2084E20107584E201035EBBE1B2130AFE22D9D2084E201
  253. 0759C2A276BA14563284E20107597632DCC0284E20503554544544B21305BF22
  254. D9D203392010000000000000503392099900000000000204C5A1B21305DF22B2
  255. 1305DF2278BF1339201000000000001520279E18A732D9D203CE228BA2084E20
  256. 10759C2A2D5CE1B2130AFE22D9D2084E2010759C2A290DA14563284E20107597
  257. 632DCC0284E20503554544544B21305BF22D9D20339201000000000000050339
  258. 2099900000000000204C5A1B21305DF22B21305DF2278BF13392010000000000
  259. 01310279E18A732D9D2084E20404414451484E2010756C7D178BF1C2A2071000
  260. 4456C6564756A00202DBBF176BA147A20C2A2070000E484E2010C8B2130AC422
  261. 3CE22C2A207000095279E1AFE22D9D20B7FC1EFE0284E20504454C44544D13A2
  262. FA1A18B9C13CE229C2A2279E1AFE22D9D2084E2050E454754544ED2A24563284
  263. E20104597632DCC02B21305DF22B21305BF22D9D2084E205035545445448DBF1
  264. B21305DF22B21305DF2278BF178BF1339201000000000001110279E1DBBF1339
  265. 201000000000001150279E1908E18A732D9D2084E20404414451484E2010756C
  266. 7D1B7FC14563284E20404414451497632DCC029C2A24563284E20107597632DC
  267. C0284E2040441445148B9C14563284E20103597632DCC029C2A24563284E2010
  268. 4597632DCC02B21305DF22339201000000000000050339209990000000000020
  269. 4C5A1B21305DF228DBF1B2130496324563284E20104597632EFE024563284E20
  270. 703414454554D40597632EFE02B21305DF224B2A26911247A20C2A20D0000C49
  271. 43545C2A20B0000144444C2A20D000054449445C2A20D000035F42545C2A20D0
  272. 000D41425B4C2A20D000054859445B2130D511284E2050D414B4454493632B21
  273. 300B80050E45475454450D9D20E1632858A1C2A20150004597075602E6567702
  274. C696374702E616D656A08496470254E445542502778656E60246F6E65647A208
  275. 4E20106584E2010C8B2130AC422C2A20900000202DBBF176BA1C2A20F0000E2C
  276. 494354576BA178BF19C2A2387C1DBBF1B7FC178BF1E0CF1DBBF1DCC024563284
  277. E20404414451497632DCC0284E2040441445148B9C14563284E20103597632DC
  278. C029C2A24563284E20107597632DCC0284E2050D414B4454493632B213047100
  279. 50544494454450D9D20E1632858A1C2A20740005446964796E67602D4F64656A
  280. 08496470254E445542502778656E60246F6E656A084E20404414451484E20107
  281. 56C7D13F2A292CF18B9C1C58C184E2010C8ED2A2387C1AC422C2A20900000202
  282. DBBF176BA19C2A2387C184E204044144514DBBF184E201075DBBF1AE8C145632
  283. 84E2040441445149763204B02DCC0284E2050D414B4454493632B21309310050
  284. 94E435454450D9D20E16323CE2284E2010759C2A2D5CE1AFE22D9D2084E20404
  285. 41445149C2A284E2010759C2A290DA1C58C147A20C2A20900000202B213076BA
  286. 184E20404414451484E20107584E201035C58C176BA1B21305BF22D9D2047A20
  287. C2A20900000202B213084E20404414451476BA1B21305DF224563284E2040441
  288. 445149763204B02DCC0284E2010359C2A276BA14563284E20103597632DCC028
  289. 4E2050D414B4454493632B2130C510040D4F4646440D9D20E163284E20503484
  290. 142584EEDA1B9691E4A20510000000000000000000DBBF1ED2A2387C1634E1DB
  291. BF1C2A20700000284E204064F4E445DA5E1AE8C193632B21303900030D4F4E43
  292. 0D9D20E163284E20503484142584EEDA1B9691E4A20510000000000000000000
  293. DBBF1ED2A2387C1634E1DBBF1C2A20700003884E204064F4E445DA5E1AE8C193
  294. 632B21301900040441445144084E20C07425F434542595E2C4943545B2000403
  295. 5F4254540D9D20E1632606E1C2A2035000A005C6561637560277169647E2E2E2
  296. A0A002020235F6274796E6760247865602C6963747A0A0A09C2A2485A178BF18
  297. B9C147A20B21304B2A24B2A21C432D6E201044D6E201035D6E201045D6E20103
  298. 4D6E201064E16323CE22D6E2010359C2A2D5CE1AFE22D9D20D6E2010449C2A26
  299. C7D19C2A2387C145632D6E20104597632DCC029C2A245632D6E20103497632DC
  300. C02ED2A2D6E2010350A132D6E2010E6D6E201044D6E2010E66C7D14B2A245632
  301. D6E20106497632DCC029C2A2D6E2010340A132D6E2010D678BF1D6E201045D6E
  302. 2010D66C7D13CE22EBBE1D6E2010644B2A2279E1387E1AFE22D9D20D6E2010D6
  303. 45632D6E20106497632DCC02D6E20103445632D6E2010D697632DCC02B21305D
  304. F22C42329C2A2387C13CE22D6E2010644B2A2279E1AFE22D9D20D6E201045DBB
  305. F176BA1B21305BF22D9D203CE22D6E2010649C2A2279E1AFE22D9D20D6E20104
  306. 576BA1B21305BF22D9D20D6E2010459C2A2D6E2010649C2A290DA1C58C1DBBF1
  307. 76BA1D6E201045D6E201064D6E201034C58C176BA1B21305DF22B21305DF2245
  308. 632D6E20104597632DCC02D6E2010349C2A276BA145632D6E20103497632DCC0
  309. 2C4232D6E201045B21305BF22D6E2010445DF22EF53293632B21309B30020057
  310. 520339202000000000000020D10007084353425F4C4C470D9D20E163278BF184
  311. E2010C4BB69176BA1C9432D9D20E16321C432D6E2010E6E16323CE228BA20D6E
  312. 2010E684E2020057533920200000000000131090DA1CFCE1B21308BA20D6E201
  313. 0E64B2A2B9DE1B2130387E1AFE22D9D2084E2010C4BB69176BA1B96914563284
  314. E2010C497632DCC0284E20503554544544B21305BF22D9D208DBF13392010000
  315. 000000000503392099900000000000204C5A1B21305DF22EF53293632B2130EB
  316. 3A193632B2130071004064F4E445403392000000000000000201200050348414
  317. 2575503392000000000000000603200050348414258450339200000000000000
  318. 080320007064E4451445452570C2A20D3000B702B70243027302D702B7026302
  319. 8302D702B7026302130302D702D74500060348464F4E44560D9D20E16321C432
  320. D6E201029E16323CE228BA2084E204064F4E445D6E20102976BA19C2A2B9DE1B
  321. 21308BA2084E204064F4E445D6E20102976BA13F2A2CFCE1B2130387E1AFE22D
  322. 9D2084E207064E44514454525B7FC184E204064F4E445D6E20102976BA178BF1
  323. 4563284E204064F4E44597632DCC026C7D1B7FC18DBF14563284E20503484142
  324. 58497632DCC024563284E2050348414257597632DCC023392010000000000004
  325. 6084E2050348414258450FA19DBB19C2A290DA14563284E20108497632DCC02B
  326. 21305BF22D9D203392010000000000000503392099900000000000204C5A1B21
  327. 305DF22EF53293632B21305F100405485944540D9D20E16323CE2284E202034C
  328. 49C2A2279E1AFE22D9D20339201000000000000049472C1B21305DF228DBF14B
  329. 2A269112858A1606E147A2084E20103584E20107584E2010C484E20108484E20
  330. 2034C4634E1B2130EFE02041A1303A193632B2130EC000C07425F434542595E2
  331. C4943545C047A20C2A20F10000202642555944535E2C4943545C2A2091000020
  332. 20202140707C65637C2A20B10000202020224562727965637C2A201200002020
  333. 20274271607566627579647C2A209100002020202742716075637C2A20510000
  334. 2020202B4967796C2A209100002020202C456D6F6E637C2A207100002020202C
  335. 496D65637C2A209100002020202D456C6F6E637C2A20B100002020202F42716E
  336. 6765637C2A20B10000202020205561636865637C2A2071000020202020556162
  337. 737C2A20F1000020202020596E656160707C656C2A2072000020265547454451
  338. 424C45435E2C4943545C2A20B20000202020214C46414C4641402350525F4554
  339. 535C2A201200002020202142545943484F4B45435C2A20B10000202020214651
  340. 4341444F4C2A207100002020202245414E435C2A205200002020202245414E40
  341. 2350525F4554535C2A20D1000020202022425F4343455C494C2A20B200002020
  342. 202242555353554C402350525F4554535C2A20B1000020202023414242414745
  343. 4C2A2012000020202023414C49464C4F4755425C2A20B1000020202023414252
  344. 5F44535C2A2091000020202023454C4542595C2A20D10000202020254747405C
  345. 414E445C2A209100002020202741627C69636C2A205200002020202845425243
  346. 5C2026425543584C2A20B100002020202C4544545553454C2A20F10000202020
  347. 2D455358425F4F4D435C2A207100002020202F4E696F6E6C2A20510000202020
  348. 205561637C2A20B10000202020205540505542535C2A20D10000202020205F64
  349. 71647F65637C2A20B100002020202350594E4943484C2A20510000202020245F
  350. 46455C2A20910000202020245F4D41445F4C2A20B100002020202A555343494E
  351. 494B2130A1500302555E430D9D20E1632339201000000000000049313C145632
  352. 84E202034C497632DCC023392010000000000000495D2C14B2A284E206034846
  353. 4F4E445E4A205100000000000000000004563284E2010C497632DCC02FD332D9
  354. D2084E2040441445149C2A26C7D1B2130F1732D9D2084E205034144545448DBF
  355. 1B21305DF228DBF19C2A24563284E20107597632DCC0284E2040441445148B9C
  356. 14563284E20103597632DCC0247A20C2A20D0000C4943545C2A20B0000144444
  357. C2A20D000054449445C2A20D000035F42545C2A20D0000D41425B4C2A20D0000
  358. 54859445B2130D511284E2050D414B44544D63A1FD332D9D20330328BA204B2A
  359. 24B2A2279E1B2130D5032D9D20683A2F17A1D8732D9D2078BF13392010000000
  360. 00001590279E18A732D9D209C2A284E2060348464F4E44584E2050D414B44544
  361. B21305DF2278BF1339201000000000001580279E18A732D9D20683A284E20603
  362. 48464F4E44584E2050D414B44544B21305DF2278BF1339201000000000001210
  363. 279E18A73284E205014444445445DF2278BF1339201000000000001430279E18
  364. A732D9D2084E20503484142575599A184E207084353425F4C4C4B21305DF2278
  365. BF1339201000000000001630279E18A732D9D2084E2050348414257584E20708
  366. 4353425F4C4C4B21305DF2278BF1339201000000000003630279E18A732D9D20
  367. 84E2020057533920200000000000131090DA184E2010C4BB69190DA184E20708
  368. 4353425F4C4C4B21305DF2278BF1339201000000000002630279E18A732D9D20
  369. 84E20503484142575339201000000000000010EEDA184E207084353425F4C4C4
  370. B21305DF2278BF1339201000000000003430279E18A732D9D2084E2010C4BB69
  371. 1599A184E207084353425F4C4C4B21305DF2278BF13392010000000000024302
  372. 79E18A732D9D2084E20503484142575339201000000000000019EEDA184E2070
  373. 84353425F4C4C4B21305DF2278BF1339201000000000001110279E18A73284E2
  374. 05034144545445DF2278BF1339201000000000003110279E18A73284E2050E45
  375. 47545445DF2278BF1339201000000000001530279E18A732D9D203CE228BA208
  376. 4E20107584E201035EBBE1B2130AFE22D9D2084E2010759C2A276BA14563284E
  377. 20107597632DCC0284E20503554544544B21305BF22D9D203392010000000000
  378. 000503392099900000000000204C5A1B21305DF22B21305DF2278BF133920100
  379. 0000000001520279E18A732D9D203CE228BA2084E2010759C2A2D5CE1B2130AF
  380. E22D9D2084E2010759C2A290DA14563284E20107597632DCC0284E2050355454
  381. 4544B21305BF22D9D203392010000000000000503392099900000000000204C5
  382. A1B21305DF22B21305DF2278BF1339201000000000003530279E18A732D9D208
  383. 4E2010354563284E20107597632DCC0284E20503554544544B21305DF2278BF1
  384. 339201000000000003520279E18A732D9D209C2A24563284E20107597632DCC0
  385. 284E20503554544544B21305DF2278BF1339201000000000001510279E18A732
  386. D9D20803A284E20402523442384E2050D414254544B21305DF2278BF13392010
  387. 00000000002510279E18A73284E2050D4142545445DF2278BF13392010000000
  388. 00003510279E18A73284E205055E4D445445DF2278BF13392010000000000014
  389. 10279E18A732D9D2084E20404414451484E204035F425454563284E204044144
  390. 5149763204B02DCC0284E2050D414B44544B21305DF2278BF133920100000000
  391. 0003450279E18A73284E20504454C445445DF2278BF133920100000000000245
  392. 0279E18A73284E205075940545445DF2278BF1339201000000000001310279E1
  393. 8A73284E205054449445445DF2278BF1339201000000000002520279E18A732D
  394. 9D203CE2284E20107584E201084D5CE1AFE22D9D2084E20107584E20108490DA
  395. 1B21305BF229C2A25DF224563284E20107597632DCC0284E20503554544544B2
  396. 1305DF2278BF1339201000000000002530279E18A732D9D203CE2284E2010358
  397. 4E20108490DA184E201075D5CE1AFE22D9D2084E20107584E20108476BA1B213
  398. 05BF2284E2010355DF224563284E20107597632DCC0284E20503554544544B21
  399. 305DF2278BF1339201000000000003210279E18A73284E205094E43545445DF2
  400. 278BF1339201000000000003190279E18A732E13A15DF2278BF1339201000000
  401. 000001610279E18A73284E2040548594455DF223392010000000000000503392
  402. 099900000000000204C5A1B21305DF228DBF1B213049632B2130F1732D9D208D
  403. BF13CE22883A1BB6914B2A2279E1AFE22D9D209C2A284E204054859445B21305
  404. BF22D9D20606E13A3A19C2A2485A14B2A2F17A18DBF19C2A284E204054859445
  405. B21305DF22B21305DF2293632B2130B463"
  406.  
  407. ---------------------- original (unmodified) announcement from David --------
  408. Program Id:   TODO
  409. Description:  To-Do Reminder List
  410. Programmer:   David Cook - Cookware
  411.  
  412. Welcome to Version 1.0 of TODO, a To-Do list reminder system.  This program
  413. was written for a friend of mine who refused to buy a HP48SX unless it had
  414. a TODO program, scheduler (with calendar) and Rolodex (he would rather have
  415. a HP48SX instead of a Wizard etc.., but needed that functionality).  Since I
  416. already have a rolodex and calendar program for my 48SX I only needed to 
  417. provide this function.
  418.  
  419. Disclaimer:
  420.  
  421.   I have had my 48SX only about 3 months, so I am sure that this program can
  422. be written better, smaller and faster.  I would have used SYSEVAL statements, 
  423. but was unsure about compatibility with other revisions (can anyone out there
  424. answer this question?).  
  425.  
  426. Shareware Notice:
  427.  
  428.   Feel free to use this program and redistribute it.   I ask that if you
  429. redistribute the program, please keep it named TODO, and please keep the
  430. title screen intact.  If you make significant changes, please add you name
  431. to the title screen - but keep my name as well.  If you find this program
  432. invaluable, a $5 donation would be appreciated.  Send any money or comments
  433. to:   David Cook, RR #1 Box 351, Whitestown Indiana  46075  - Thank you!
  434.  
  435. Installing And Running TODO:
  436.  
  437.   The program can be found at the bottom of this post.  It is in ->ASC format
  438. and you will need ASC-> to unscramble it.  ASC-> is openly available on this
  439. forum as well as the HP BBS.  (The ASC routines were written by Bill Wickes.)
  440. I'm sure that if you don't have them, an open letter to the NET would produce
  441. them rather quickly!
  442.  
  443.   (1)  Cut the code at the bottom of the document, AFTER the CUT HERE line.
  444.        Remove the final CUT HERE line at the bottom.
  445.  
  446.   (2)  Send this file to your HP48SX, via the Serial Cable, into the file 'TODO'
  447.  
  448.   (3)  Hit the TODO button (eg., place the contents of TODO on the command line)
  449.  
  450.   (4)  Execute  ASC->  (which you already should have loaded, or load it now)
  451.  
  452.   (5)  Store the result back to 'TODO' - it will become a directory
  453.  
  454. Running...
  455.  
  456.   (6)  Simply enter the TODO directory and hit the RUN button which will be
  457.        the very first button you see.
  458.  
  459.        From here on out, simply follow (6) to run it.
  460.  
  461. Features:
  462.  
  463.      *  Unlimited number of lists - up to the memory of your machine
  464.      *  Unlimited size for the lists - up to the memory of your machine
  465.      *  Ability to scroll the lists by the line or page
  466.      *  Ability to jump to the beginning or end of any list
  467.      *  Ability to change lists via a catalog
  468.      *  Ability to create new lists or delete old lists
  469.      *  Ability to MARK and UNMARK items on the list
  470.      *  Ability to UNMARK ALL items on the list
  471.      *  Ability to delete any single item on the list
  472.      *  Ability to delete ALL MARKED items on the list
  473.      *  Ability to insert a new item anywhere in the list
  474.      *  Ability to sort any list of information
  475.  
  476.  
  477. GROCERY LIST
  478.  
  479.   I have created a large (though somewhat incomplete) grocery lists, as a
  480. default.  It is large so it does take a bit of time to compile the GROB.  Use
  481. this list as an example list, and delete it if you need the memory or find it
  482. unusable.
  483.      
  484. How To Use TODO
  485. ---------------
  486.  
  487.   When the program begins to run, it will display six menu items assigned
  488. to the menu keys.  These six items are:
  489.  
  490.      LIST  -  Catalog of all lists OR create a new list OR delete a list
  491.      ADD   -  Adds a new item to the end of the list OR inserts a blank item
  492.      EDIT  -  Edits the text of an existing item
  493.      SORT  -  Sort any particular list
  494.      MARK  -  Marks an item OR Unmarks an item OR Unmarks all marked items
  495.      EXIT  -  Exits the program and returns you to the HOME directory
  496.  
  497. The following lists the available KEYSTROKES from the main menu level:
  498.  
  499. UP ARROW                - Scroll the current list towards the top - one item
  500. ORANGE SHIFT UP ARROW   - Move the current list toward the top - one page
  501. BLUE SHIFT UP ARROW     - Move the current list to the top
  502. DOWN ARROW              - Scroll the current list toward the bottom - one item
  503. ORANGE SHIFT DOWN ARROW - Move the current list toward the bottom - one page
  504. BLUE SHIFT DOWN ARROW   - Move the current list to the bottom
  505. DEL (keyboard key)      - Deletes the current item
  506. ORANGE SHIFT DEL (purge)- Deletes ALL marked items
  507. LIST (menu key)         - Get a catalog of all lists
  508. BLUE SHIFT LIST         - Enter the name for a brand new list
  509. ADD  (menu key)         - Add an item to the end of the current list
  510. BLUE SHIFT ADD          - Insert a blank line ABOVE the current item
  511. EDIT (menu key)         - Edit the text of the current line
  512. SORT                    - Sort the current list in alphabetical order
  513. MARK (menu key)         - Mark OR Unmark the current item
  514. BLUE SHIFT MARK         - Unmark ALL marked items
  515. ORANGE SHIFT MARK       - Same as MARK without the Startrek sound
  516. EXIT                    - Stop the program and return to the HOME directory
  517. BLUE SHIFT EXIT         - Turn the calculate off (turning it on returns to
  518.                           TODO automatically with no delay)
  519.  
  520.  
  521. Here are some general comments about a couple of the commands...
  522.  
  523. CURRENT ITEM
  524.  
  525. The current item (eg., the item you are going to MARK, UNMARK, DELETE etc..)
  526. is the one at the TOP OF THE DISPLAY.  To move an item into the current item
  527. area, simply scroll (UP/DOWN arrow) until it is the top item on the list.  This
  528. goes for catalog lists (LIST) as well.
  529.  
  530. LIST
  531.  
  532. When in LIST, all current lists in the current directory will be displayed, in
  533. alphabetical order (eg., sorted).   WHILE you are in this mode, UP and DOWN
  534. arrow work (but PAGE UP and PAGE DOWN and GO TO TOP and GO TO END do not work).
  535. The DEL keyboard key will DELETE a list completely from memory.
  536.  
  537. MARK
  538.  
  539. The MARK command allows you to place a marker next to items which you have
  540. completed (eg., check 'em off).  Hit MARK the first time to place the marker,
  541. Hit MARK a second time (on the same item) to unmark.  When you MARK or UNMARK
  542. a 'startrek' type beep will occur to signify the mark.  If you do not wish
  543. to hear the sound, hit ORANGE SHIFT MARK instead.  BLUE SHIFT MARK will UNMARK
  544. ALL currently marked entries WITHOUT deleting them from the list.
  545.  
  546. DEL
  547.  
  548. The normal 48SX DEL key serves to DELETE the current item, when hit under
  549. the normal menu (when hit while in LIST, it deletes entire lists).  If you
  550. hit ORANGE SHIFT DEL, the program will delete ALL marked entries - useful
  551. for purging information you have already done.
  552.  
  553. STARTING UP
  554.  
  555. If you start the program, and the current list is not found by the program
  556. (eg., you deleted it from the operating system level), the LIST command will
  557. automatically be run by the program.  If the LIST command does not see any
  558. lists in memory, the BLUE SHIFT LIST command will automatically be run, allowing
  559. you to create a new list.
  560.  
  561. OTHER KEYBOARD KEYS
  562.  
  563. If you hit an unknown key (eg., not known to the program), the program will
  564. issue a very low tone.  Try again!
  565.  
  566.  
  567. Internals:
  568.  
  569.   This posting is already too long to give you full details of the program.
  570. Feel free to rip it apart and improve it - just post it back!  One routine
  571. you will probably want to add to your 'favorites' list is the routine named
  572. R2D2.  This, standalone, routine takes a single number from the stack and
  573. makes your HP48SX sound like a device on Star Trek.  The best values, for
  574. the most convincing sound are the values 4 or 5.  Simply type
  575.  
  576.                                  5  R2D2  
  577.  
  578. for a demo.  The number indicates the length of time (eg., number of chirps)
  579. for the speaker to make).
  580.  
  581. Another routine you will find useful is the SORT routine.  To use SORT 
  582. independently of the program, simply place a LIST of STRINGS on Level 1 and
  583. run SORT.  This is NOT a bubble sort, but an insertion sort, and it only takes
  584. as long to sort the data as it does to read the data one time (plus the linear
  585. count to find the place to put the data).
  586.  
  587. Other items you will find useful, if reverse engineering the routines...  The
  588. variable 'DATA' contains the name of the current to-do list database.  The
  589. system creates TEMPORARY variables (only will be seen if you abort the program
  590. while it is running).  'W' contains a number which signifies which item is
  591. the current iten (1 - S).  'S' contains the total number of items in the list.
  592. If you abort during a catalog, you will see CATTEMP which contains a list of
  593. all you to-do lists.   'W', 'S' and 'CATTEMP' are all deleted and rebuilt
  594. by the program.
  595.  
  596. Here is a brief listing of what the other routines do:
  597.  
  598. RUN       - Runs the TODO program
  599. SORT      - Sorts a LIST of STRINGS in level 1
  600. MON       - High speed GROB editor, used to turn a Mark ON
  601. MOFF      - High speed GROB editor, used to turn a Mark OFF
  602. INSTD     - INSerts a blank item into the ToDo list above the current item
  603. EDITD     - EDIts the current item of the current ToDo list
  604. NEWTD     - Creates a NEW ToDo list
  605. CATTD     - Handles the LIST command catalog of lists
  606. SEETD     - Displays the current list (does NOT build it)
  607. MAKTD     - Makes the GROB associated with the current list
  608. ADDTD     - Adds a new item to the END of the current list
  609. MARTD     - Handles Marking and Unmarking of the current item
  610. UNMTD     - Unmarks ALL marked items in the list
  611. WIPTD     - Deletes ALL marked items in the list
  612. DELTD     - Deletes the current item in the list
  613. R2D2      - Takes a repeat value from level 1 and issues StarTrek sounds
  614.  
  615. AGAIN... these routines should only be used for editing and changing the
  616. program.  Use the RUN routine to execute the program (just hit RUN) and the
  617. program will automatically issues these routines for you in responce to the
  618. menu keys you hit (as described above).  I provided the details above only
  619. for those who want to see how it runs!
  620.  
  621. ENJOY!!!!!
  622.  
  623.  
  624.